The present invention relates to the field of information services, more specifically to a system for access to remote information services.
With the proliferation of data sources and services, a person seeking data on any of a variety of subjects can access a database to find data which might have taken laborious research in earlier times. However, with the proliferation of data sources, an information problem arises as the data problem is solved. Users of data are not interested in the data itself, except for those involved in the maintenance and programming of systems to handle the data, but are interested in the information the data contains. For example, a phone book, on-line or otherwise, is a source of information. A person interested only in data would deem a phone book containing one million names to be superior to a phone book containing only one hundred names, since the former contains more data. However, a person interested in information, such as a seeker of a phone number of a particular person, considers both databases equal, so long as both contain the number of the particular person. Indeed, the information seeker might even consider the smaller database to be better, i.e., more informational, if the smaller database is easier to search. Heretofore, the provision of information has been the responsibility of those in charge of data, and thus they have tended to solve the problem of finding information as a problem of finding data.
Human users face many obstacles in obtaining services from remote computing systems. Such services include database services, computational services and use of software libraries, digital publishing service, and many others. Obstacles faced are so numerous that virtually every new software product can address only a small portion of them. However, such obstacles generally result from Primitive Information Resources (defined below), such as network addressing and connectivity, operating systems, language and syntax, query languages, file systems, text editor incompatibilities, and differences in each vendor's implementation of common functions.
Use of local computers, such as personal computers and workstations, provided many benefits relative to logging onto a remote host. However, new obstacles arose as well which require the human user to be cognizant of whether a service resides on their local computer or on a remote computer, and if on a remote computer, be capable of surmounting many challenges on account of Information Primitives, including security, accounting, login, operating system, query language, and including moving output produced on the remote computer to their local computer, or using unfamiliar editors or other tools on the remote host. Another recent approach is to develop interfaces that execute on the local computer and provide easy conveyance of instructions to the remote computer and conveyance of the results back to the local computer. However, even this has the costly burden of installing, maintaining and executing an interface on the local computer, and storing whole search results on the local computer.
Despite vast improvement in many aspects of information technology, there are still many obstacles to access to information that prevent consumers from obtaining and using information effectively. Except for those with computing, network, and information skills, access to remote information resources is still out of reach in a practical sense.
Recently, workstations and personal computers ("PCs") provided graphical user interfaces which allow a user to select and activate a service on the workstation. The user needed only to find the desired icon and select, or click, it with a mouse or other pointing device. However, obtaining services such as database services from computers other than the user's own local host, be it a multi-user time-sharing computer, a PC, or workstation, was much more difficult.
Remote access often required the user to manipulate a network address of the host computer supporting the desired information service, and many other computing and network primitives. Of course, remote access is not just a problem for local PC and workstation users, but also for local users on a multi-user time-sharing system such as a minicomputer or mainframe.
One example of a remote access system is shown in U.S. Pat. No. 5,124,909 (Blakely et al., June, 1992). Therein, requester processes run on a local host, and are used to translate local host commands into commands understood by the remote host. Such a system is illustrative of the types of systems which must be continually updated, on local computers, because improvements in information service software result in new versions of such software. These new versions must be obtained, usually including a purchase cost, for and installed on each local computer. This is known as the "software maintenance burden".
Software upgrading is much more difficult if the software resides on the local host, as shown in Blakely. In that personal computers and workstations are more numerous than information service host computers, the software maintenance burden is not only manyfold greater than if such maintenance were performed only on each remote host, but it is even more problematical because the software maintenance burden falls on the owner/user of the personal computer or workstation, who is much less likely to be able, or inclined, to perform such software maintenance.
The "Information Problem" i.e., how to store and retrieve (search, identify, select, and fetch) information is not a computing problem, although computers might or might not provide services. It is not a network engineering problem, although networks might or might not provide services. It is not solely a library or archival problem, although reference skills and classification techniques developed in the bibliographic profession are essential. It is not a pedagogical problem, but, of course, techniques in the teaching profession are important in conveying information. Yet, by human nature, each of these disciplines blurs the Information Problem to see it as one and the same with the problems addressed by their domain. They each see a part of the elephant, and the solutions don't necessarily interoperate with one another across disciplines.
The commercial sector reflects this trend. Everyone is in everyone else's "information business". Phone companies issue credit cards, financial concerns offer telephone services, cable television firms become database vendors, etc. But each addresses the Information Problem from the perspective of their own strengths, and largely ignores what the other disciplines bring to the solution set. None of these disciplines alone has all the background required to address the Information Problem. When, for example, computer science or data processing people decide to design a technology that provides access to information resources, their inclination is to reason that users have powerful computers on their own desktops, so they write programs that run on all those computers to access remote information services, then sell the software. The fallacy is: though computers have become inexpensive enough to decentralize the repository of computing cycles away from mainframes to the desktop, it does not follow that all the services provided by those mainframe computers should also be distributed.
For example, telecommunications or network engineers may seize upon an Information Problem such as the problem of "how to find directory information about people using the network". Networking and computing are important fields of expertise relevant to this problem, but so are database management and retrieval expertise. Yet implementations of "network solutions" to this problem, such as X.500, reflect ignorance of information retrieval issues understood by the bibliographic community for many years. The result is poor retrieval capability, duplicate databases, maintenance of duplicate databases, and software maintenance on each local host. Other examples are numerous. What is needed is an architecture wherein components are implemented and controlled by those best able to manage and understand the role of the particular component in solving information problems.
From the above it is seen that an improved means for accessing remote information services is needed.